package com.zillion.health.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.zillion.common.annotation.Excel;
import com.zillion.common.core.domain.BaseEntity;

import java.util.Date;

/**
 * 人员信息对象 health_person_info
 * 
 * @author zillion
 * @date 2025-06-01
 */
public class HealthPersonInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 姓名 */
    @Excel(name = "姓名")
    private String name;

    /** 身份证号码 */
    @Excel(name = "身份证")
    private String idCard;

    /** 年龄 */
    @Excel(name = "年龄")
    private Integer age;

    /** 性别 */
    @Excel(name = "性别", readConverterExp = "0=男,1=女,2=未知")
    private Integer gender;

    /** 民族 */
    @Excel(name = "民族")
    private String ethnic;

    /** 文化程度 */
    @Excel(name = "文化程度")
    private String educationLevel;

    /** 工龄 */
    @Excel(name = "工龄")
    private Integer workYears;

    /** 所属地区 */
    @Excel(name = "所属地区" , readConverterExp ="101=中川园区,102=西岔园区,103=秦川园区")
    private Integer parkId;

    /** 联系电话 */
    @Excel(name = "联系电话")
    private String phone;

    /** 工种 */
    @Excel(name = "工种")
    private Integer jobTypeId;

    /** 行业 */
    private Integer industryId;

    /** 家庭地址 */
    @Excel(name = "家庭地址")
    private String address;

    /** 申报时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "申报时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date applyTime;

    /** 审核状态 */
    @Excel(name = "审核状态" , readConverterExp ="0=待审核,1=审核通过,2=审核不通过")
    private Integer auditStatus;

    /** 单位名称 */
    @Excel(name = "企业名称")
    private String unitName;

    /** 机构代码 */
    @Excel(name = "机构代码")
    private String socialCreditCode;

    /** 上传文件路径 */
    private String uploadFile;

    /** 审核时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date auditTime;

    /** 是否单位, */
    @Excel(name = "是否单位" , readConverterExp ="0=否,1=是")
    private Integer isUnit;

    private Long deptId;

    public Long getDeptId() {
        return deptId;
    }

    public void setDeptId(Long deptId) {
        this.deptId = deptId;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getIdCard() {
        return idCard;
    }

    public void setIdCard(String idCard) {
        this.idCard = idCard;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public Integer getGender() {
        return gender;
    }

    public void setGender(Integer gender) {
        this.gender = gender;
    }

    public String getEthnic() {
        return ethnic;
    }

    public void setEthnic(String ethnic) {
        this.ethnic = ethnic;
    }

    public String getEducationLevel() {
        return educationLevel;
    }

    public void setEducationLevel(String educationLevel) {
        this.educationLevel = educationLevel;
    }

    public Integer getWorkYears() {
        return workYears;
    }

    public void setWorkYears(Integer workYears) {
        this.workYears = workYears;
    }

    public Integer getParkId() {
        return parkId;
    }

    public void setParkId(Integer parkId) {
        this.parkId = parkId;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public Integer getJobTypeId() {
        return jobTypeId;
    }

    public void setJobTypeId(Integer jobTypeId) {
        this.jobTypeId = jobTypeId;
    }

    public Integer getIndustryId() {
        return industryId;
    }

    public void setIndustryId(Integer industryId) {
        this.industryId = industryId;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public Date getApplyTime() {
        return applyTime;
    }

    public void setApplyTime(Date applyTime) {
        this.applyTime = applyTime;
    }

    public Integer getAuditStatus() {
        return auditStatus;
    }

    public void setAuditStatus(Integer auditStatus) {
        this.auditStatus = auditStatus;
    }

    public String getUnitName() {
        return unitName;
    }

    public void setUnitName(String unitName) {
        this.unitName = unitName;
    }

    public String getSocialCreditCode() {
        return socialCreditCode;
    }

    public void setSocialCreditCode(String socialCreditCode) {
        this.socialCreditCode = socialCreditCode;
    }

    public String getUploadFile() {
        return uploadFile;
    }

    public void setUploadFile(String uploadFile) {
        this.uploadFile = uploadFile;
    }

    public Date getAuditTime() {
        return auditTime;
    }

    public void setAuditTime(Date auditTime) {
        this.auditTime = auditTime;
    }

    public Integer getIsUnit() {
        return isUnit;
    }

    public void setIsUnit(Integer isUnit) {
        this.isUnit = isUnit;
    }

    @Override
    public String toString() {
        return "HealthPersonInfo{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", idCard='" + idCard + '\'' +
                ", age=" + age +
                ", gender=" + gender +
                ", ethnic='" + ethnic + '\'' +
                ", educationLevel='" + educationLevel + '\'' +
                ", workYears=" + workYears +
                ", parkId=" + parkId +
                ", phone='" + phone + '\'' +
                ", jobTypeId=" + jobTypeId +
                ", industryId=" + industryId +
                ", address='" + address + '\'' +
                ", applyTime=" + applyTime +
                ", auditStatus=" + auditStatus +
                ", unitName='" + unitName + '\'' +
                ", socialCreditCode='" + socialCreditCode + '\'' +
                ", uploadFile='" + uploadFile + '\'' +
                ", auditTime=" + auditTime +
                ", isUnit=" + isUnit +
                '}';
    }
}
